Calibration of high-density servo pattern detector parameters

ABSTRACT

A tape drive-implemented method, according to one embodiment, includes: causing a servo reader to move in a first direction over a high-density servo pattern which includes a plurality of high-density servo tracks. Each of the servo tracks includes at least two patterns written at different frequencies to produce different periodic waveforms during readback. Moreover, a readback signal is received from the servo reader as the servo reader moves in the first direction. The readback signal is used to set a gain parameter for each of the respective periodic waveforms. Other systems, methods, and computer program products are described in additional embodiments.

BACKGROUND

The present invention relates to tape storage systems, and morespecifically, to calibrating high-density (HD) servo detectorparameters.

Timing-based servo (TBS) is a technology which was developed for lineartape drives in the late 1990s. In TBS systems, recorded servo patternsinclude transitions with two different azimuthal slopes, thereby forminga chevron-type pattern. These patterned transitions allow for anestimate of the head lateral position to be determined by evaluating therelative timing of pulses generated by a servo reader reading thepatterns as they are passed over the servo reader.

In a TBS format, the servo pattern is prerecorded in several bandsdistributed across the tape. Typically, five or nine servo pattern bandsare included on a given tape which run about parallel to a longitudinalaxis of the tape. Data is recorded in the regions of tape locatedbetween pairs of the servo bands. In read/write heads of IBM lineartape-open (LTO) and Enterprise tape drives, two servo readers arenormally available per head module, from which longitudinal position(LPOS) information as well as a position error signal (PES) may bederived. Effective detection of the TBS patterns is achieved by asynchronous servo channel employing a matched-filterinterpolator/correlator, which ensures desirable filtering of the servoreader signal.

With the increase in track density that is envisioned for future tapemedia and tape drives, efficiently controlling the lateral position ofthe head and/or skew of the head with respect to tape by using feedbackgenerated by reading the TBS patterns becomes increasingly difficult.Conventional servo based implementations may not be sufficientlyaccurate to ensure adequate positioning accuracy of the data readers andwriters that move along data tracks. Furthermore, the repetition rate ofthe head lateral position estimates may be too low to ensure propertrack-following operation as tape velocity varies during use. Therepetition rate of the head lateral position estimates may additionallybe unable to support future actuators with larger bandwidths.

Some magnetic tapes may further be augmented with additional featuresthat provide additional functionality. Accordingly, HD servo patternsmay be implemented in place of, or in addition to, the standard TBSservo patterns.

SUMMARY

A tape drive-implemented method, according to one embodiment, includes:causing a servo reader to move in a first direction over a high-densityservo pattern which includes a plurality of high-density servo tracks.Each of the servo tracks includes at least two patterns written atdifferent frequencies to produce different periodic waveforms duringreadback. Moreover, a readback signal is received from the servo readeras the servo reader moves in the first direction. The readback signal isused to set a gain parameter for each of the respective periodicwaveforms.

A computer program product, according to another embodiment, includes acomputer readable storage medium having program instructions embodiedtherewith. The computer readable storage medium is not a transitorysignal per se. Moreover, the program instructions executable by aprocessor to cause the processor to: cause, by the processor, a servoreader to move in a first direction over a high-density servo patternwhich includes a plurality of high-density servo tracks. Each of theservo tracks includes at least two patterns written at differentfrequencies to produce different periodic waveforms during readback.Moreover, a readback signal is received, by the processor, from theservo reader as the servo reader moves in the first direction. Thereadback signal is used, by the processor, to set a gain parameter foreach of the respective periodic waveforms.

A tape drive, according to yet another embodiment, includes: acontroller comprising logic integrated with and/or executable by thecontroller to cause the controller to: cause a servo reader to move in afirst direction over a high-density servo pattern which includes aplurality of high-density servo tracks. Each of the servo tracksincludes at least two patterns written at different frequencies toproduce different periodic waveforms during readback. Moreover, areadback signal is received from the servo reader as the servo readermoves in the first direction. The readback signal is used to set a gainparameter for each of the respective periodic waveforms.

Other aspects and embodiments of the present invention will becomeapparent from the following detailed description, which, when taken inconjunction with the drawings, illustrate by way of example theprinciples of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a network storage system, according to one embodiment.

FIG. 2 is a simplified tape drive of a tape-based data storage system,according to one embodiment.

FIG. 3 is a tape layout, according to one embodiment.

FIG. 4A is a hybrid servo pattern written in a dedicated area of a tapemedium, according to one embodiment.

FIG. 4B is a partial detailed view of a TBS pattern, according to oneembodiment.

FIG. 5A is a representation of a reader over an HD pattern, according toone embodiment.

FIG. 5B is a graph plotting readback energy vs. frequency for the readerin FIG. 5A.

FIG. 5C is a representation of a reader over an HD pattern, according toone embodiment.

FIG. 5D is a graph plotting readback energy vs. frequency for the readerin FIG. 5C.

FIG. 6 is a block diagram of a detector for HD patterns, according toone embodiment.

FIG. 7 is a partial block diagram of a servo channel for the detectionof TBS patterns, according to one embodiment.

FIG. 8 is a block diagram of a detector for HD patterns, according toone embodiment.

FIG. 9A is a flowchart of a method, according to one embodiment.

FIG. 9B is a flowchart of sub-operations for the method of FIG. 9A,according to one embodiment.

FIG. 10 is a block diagram of track-following and skew-compensationloops using dual synchronous servo channels, according to oneembodiment.

FIG. 11A is a representative view of the path of a servo reader acrossan HD servo pattern, according to one embodiment.

FIG. 11B is a graph plotting time vs. the energy waveform for a firstfrequency of the HD servo pattern of FIG. 11A.

FIG. 11C is a graph plotting time vs. the energy waveform for a secondfrequency of the HD servo pattern of FIG. 11A.

FIG. 11D is a graph plotting time vs. the energy waveform for a thirdfrequency of the HD servo pattern of FIG. 11A.

FIG. 12 is a flowchart of a method, according to one embodiment.

FIG. 13 is a flowchart of a method, according to one embodiment.

DETAILED DESCRIPTION

The following description is made for the purpose of illustrating thegeneral principles of the present invention and is not meant to limitthe inventive concepts claimed herein. Further, particular featuresdescribed herein can be used in combination with other describedfeatures in each of the various possible combinations and permutations.

Unless otherwise specifically defined herein, all terms are to be giventheir broadest possible interpretation including meanings implied fromthe specification as well as meanings understood by those skilled in theart and/or as defined in dictionaries, treatises, etc.

It must also be noted that, as used in the specification and theappended claims, the singular forms “a,” “an” and “the” include pluralreferents unless otherwise specified.

The following description discloses several preferred embodiments ofmagnetic storage systems, as well as operation and/or component partsthereof for improved processes of determining the gain parameters thatare used for adjusting the estimated energy values of periodic waveformsin an HD servo pattern. Accordingly, some of the embodiments describedherein have successfully improved the achievable accuracy of detectorcharacteristics, as will be described in further detail below.

In one general embodiment, a tape drive-implemented method includes:causing a servo reader to move laterally in a first direction over ahigh-density servo pattern on a moving magnetic tape, receiving areadback signal from the servo reader as the servo reader moveslaterally in the first direction, using amplitudes of the readbacksignal to determine a maximum energy value of each of the at least twoperiodic waveforms, and using the maximum energy values to set a gainparameter for each of the respective periodic waveforms. The firstdirection is perpendicular to a longitudinal axis of the magnetic tape.Moreover, the high-density servo pattern includes a plurality ofhigh-density servo tracks, the servo tracks including at least twopatterns written at different frequencies to produce different periodicwaveforms during readback.

In another general embodiment, a computer program product includes acomputer readable storage medium having program instructions embodiedtherewith, the program instructions executable by a processor to causethe processor to: cause, by the processor, a servo reader to movelaterally in a first direction over a high-density servo pattern on amoving magnetic tape, receive, by the processor, a readback signal fromthe servo reader as the servo reader moves laterally in the firstdirection, use, by the processor, amplitudes of the readback signal todetermine a maximum energy value of each of the at least two periodicwaveforms, and use, by the processor, the maximum energy values to set again parameter for each of the respective periodic waveforms. The firstdirection is perpendicular to a longitudinal axis of the magnetic tape.Moreover, the high-density servo pattern includes a plurality ofhigh-density servo tracks, the servo tracks including at least twopatterns written at different frequencies to produce different periodicwaveforms during readback.

In yet another general embodiment, a tape drive includes: a controllercomprising logic integrated with and/or executable by the controller tocause the controller to: cause a servo reader to move laterally in afirst direction over a high-density servo pattern on a moving magnetictape, receive a readback signal from the servo reader as the servoreader moves laterally in the first direction, use amplitudes of thereadback signal to determine a maximum energy value of each of the atleast two periodic waveforms, and use the maximum energy values to set again parameter for each of the respective periodic waveforms. The firstdirection is perpendicular to a longitudinal axis of the magnetic tape.Moreover, the high-density servo pattern includes a plurality ofhigh-density servo tracks, the servo tracks including at least twopatterns written at different frequencies to produce different periodicwaveforms during readback.

Referring now to FIG. 1, a schematic of a network storage system 10 isshown according to one embodiment. This network storage system 10 isonly one example of a suitable storage system and is not intended tosuggest any limitation as to the scope of use or functionality ofembodiments of the invention described herein. Regardless, networkstorage system 10 is capable of being implemented and/or performing anyof the functionality set forth herein.

In the network storage system 10, there is a computer system/server 12,which is operational with numerous other general purpose or specialpurpose computing system environments or configurations. Examples ofwell-known computing systems, environments, and/or configurations thatmay be suitable for use with computer system/server 12 include, but arenot limited to, personal computer systems, server computer systems, thinclients, thick clients, handheld or laptop devices, multiprocessorsystems, microprocessor-based systems, set top boxes, programmableconsumer electronics, network PCs, minicomputer systems, mainframecomputer systems, and distributed cloud computing environments thatinclude any of the above systems or devices, and the like.

Computer system/server 12 may be described in the general context ofcomputer system-executable instructions, such as program modules, beingexecuted by a computer system. Generally, program modules may includeroutines, programs, objects, components, logic, data structures, and soon that perform particular tasks or implement particular abstract datatypes. Computer system/server 12 may be practiced in distributed cloudcomputing environments where tasks are performed by remote processingdevices that are linked through a communications network. In adistributed cloud computing environment, program modules may be locatedin both local and remote computer system storage media including memorystorage devices.

As shown in FIG. 1, computer system/server 12 in the network storagesystem 10 is shown in the form of a general-purpose computing device.The components of computer system/server 12 may include, but are notlimited to, one or more processors or processing units 16, a systemmemory 28, and a bus 18 that couples various system components includingsystem memory 28 which is coupled to processor 16.

Bus 18 represents one or more of any of several types of bus structures,including a memory bus or memory controller, a peripheral bus, anaccelerated graphics port, a processor or local bus using any of avariety of bus architectures, etc. By way of example, which is in no wayintended to limit the invention, such architectures include IndustryStandard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus,Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA)local bus, and Peripheral Component Interconnects (PCI) bus.

Computer system/server 12 typically includes a variety of computersystem readable media. Such media may be any available media that isaccessible by computer system/server 12, and may include both volatileand non-volatile media, removable and non-removable media.

System memory 28 may include computer system readable media in the formof volatile memory, such as random access memory (RAM) 30 and/or cachememory 32. Computer system/server 12 may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 34 may be provided forreading from and writing to a non-removable, non-volatile magneticmedia—not shown and typically called a “hard disk,” which may beoperated in a hard disk drive (HDD). Although not shown, a magnetic diskdrive for reading from and writing to a removable, non-volatile magneticdisk (e.g., a “floppy disk”), and an optical disk drive for reading fromor writing to a removable, non-volatile optical disk such as a compactdisc read-only memory (CD-ROM), digital versatile disk (DVD)-ROM orother optical media may be provided. In such instances, each disk drivemay be connected to bus 18 by one or more data media interfaces. As willbe further depicted and described below, memory 28 may include at leastone program product having a set (e.g., at least one) of program modulesthat are configured to carry out the functions of embodiments describedherein.

Program/utility 40, having a set (at least one) of program modules 42,may be stored in memory 28 by way of example, and not limitation, aswell as an operating system, one or more application programs, otherprogram modules, program data, etc. Each of the operating system, one ormore application programs, other program modules, and program data orsome combination thereof, may include an implementation of a networkingenvironment. It should also be noted that program modules 42 may be usedto perform the functions and/or methodologies of embodiments of theinvention as described herein.

Computer system/server 12 may also communicate with one or more externaldevices 14 such as a keyboard, a pointing device, a display 24, etc.;one or more devices that enable a user to interact with computersystem/server 12; and/or any devices (e.g., network card, modem, etc.)that enable computer system/server 12 to communicate with one or moreother computing devices. Such communication may occur via Input/Output(I/O) interfaces 22. Still yet, computer system/server 12 maycommunicate with one or more networks such as a local area network(LAN), a general wide area network (WAN), and/or a public network (e.g.,the Internet) via network adapter 20. As depicted, network adapter 20communicates with the other components of computer system/server 12 viabus 18. It should be understood that although not shown, other hardwareand/or software components could be used in conjunction with computersystem/server 12. Examples, include, but are not limited to: microcode,device drivers, redundant processing units, external disk drive arrays,redundant array of independent disks (RAID) systems, tape drives, dataarchival storage systems, etc.

Looking to FIG. 2, a tape supply cartridge 120 and a take-up reel 121are provided to support a tape 122. One or more of the reels may formpart of a removable cartridge and are not necessarily part of the tapedrive 100. A tape drive, e.g., such as that illustrated in FIG. 2, mayfurther include drive motor(s) to drive the tape supply cartridge 120and the take-up reel 121 to move the tape 122 over a tape head 126 ofany type. Such head may include an array of readers, writers, or both.

Guides 125 guide the tape 122 across the tape head 126. Such tape head126 is in turn coupled to a controller 128 via a cable 130. Thecontroller 128, may be or include a processor and/or any logic forcontrolling any subsystem of the drive 100. For example, the controller128 may control head functions such as servo following, data writing,data reading, etc. The controller 128 may include at least one servochannel and at least one data channel, each of which include data flowprocessing logic configured to process and/or store information to bewritten to and/or read from the tape 122. The controller 128 may operateunder logic known in the art, as well as any logic disclosed herein, andthus may be considered as a processor for any of the descriptions oftape drives included herein according to various embodiments. Thecontroller 128 may be coupled to a memory 136 of any known type, whichmay store instructions executable by the controller 128. Moreover, thecontroller 128 may be configured and/or programmable to perform orcontrol some or all of the methodology presented herein. Thus, thecontroller 128 may be considered to be configured to perform variousoperations by way of logic programmed into one or more chips, modules,and/or blocks; software, firmware, and/or other instructions beingavailable to one or more processors; etc., and combinations thereof.

The cable 130 may include read/write circuits to transmit data to thehead 126 to be recorded on the tape 122 and to receive data read by thehead 126 from the tape 122. An actuator 132 controls position of thehead 126 relative to the tape 122.

An interface 134 may also be provided for communication between the tapedrive 100 and a host (internal or external) to send and receive the dataand for controlling the operation of the tape drive 100 andcommunicating the status of the tape drive 100 to the host, all as willbe understood by those of skill in the art.

Referring momentarily to FIG. 3, an illustrative tape layout is depictedin accordance with one embodiment. As shown, tape 300 has a tape layoutwhich implements five servo bands (e.g., servo patterns) Servo Band0-Servo Band 4, and four data bands Data Band 0-Data Band 3 locatedbetween pairs of servo bands, as specified in the LTO format and IBMEnterprise format. Data is recorded in the data bands. The height H ofeach of the servo bands is measured in the cross-track direction 304which is about orthogonal to the length L of the tape 300. According toan example, the height H of each of the servo bands may be about 186microns according to the format of LTO Generations 1 to 6. Moreover, apitch β between the servo bands as shown may be about 2859 microns,again according to the LTO format.

An exemplary tape head 302 is also shown as having two modules and asbeing positioned over a portion of the tape 300 according to oneapproach. Read and/or write transducers may be positioned on eithermodule of the tape head 302 according to any of the approaches describedherein, and may be used to read data from and/or write data to the databands. Furthermore, tape head 302 may include servo readers which may beused to read the servo patterns in the servo bands according to any ofthe approaches described herein. It should also be noted that thedimensions of the various components included in FIG. 3 are presented byway of example only and are in no way intended to be limiting.

Some tape drives are configured to operate at low tape velocities and/orwith nanometer head position requirements. These tape drives may useservo formats that target Barium Ferrite (BaFe) tape media, 4 or 8 databands, 32 or 64 data channel operation, allow very low velocityoperation, support large-bandwidth actuator operation, and improveparameter estimation to minimize standard deviation of the positionerror signal (PES), thus enabling track-density scaling for tapecartridge capacities up to 100 terabyte (TB) and beyond.

However, according to some embodiments, magnetic tape may further beaugmented with additional features that provide additionalfunctionality. Accordingly, HD servo patterns may be implemented inplace of the standard TBS servo patterns, e.g., as seen in FIG. 3. TheHD servo patterns may be used to improve track-following performance.

However, it may be desirable that TBS servo patterns (or at leastsubstantial features from them) remain a part of magnetic tape formats.Thus, in still further embodiments, a standard TBS servo pattern (e.g.,as shown in FIG. 3) may be implemented in combination with one or moreHD servo patterns (e.g., see FIG. 4A below). One implementation includesa hybrid servo pattern scheme, in which a standard TBS pattern isretained and additional HD patterns are provided in a dedicated,preferably currently unused area of the tape media. This type of patternmay be implemented by increasing the number of data channels from 16 to32, and reducing the width of the TBS pattern from 186 microns to 93microns, in some approaches.

A hybrid servo pattern 410, which includes a standard TBS pattern 402written in a servo band, as well as an HD pattern 404 that is written ina HD band (e.g., dedicated area) of the tape medium 408 is shown in FIG.4A. Moreover, each HD pattern 404 includes a number of HD tracks, eachof the HD tracks having a respective periodic waveform, e.g., as seen inFIGS. 5A, 5C and 11A below. In some approaches, significant features ofthe original TBS pattern 402 are retained, such as a servo framestructure consisting of four servo bursts containing a number of servostripes, where the servo stripes of adjacent servo bursts are writtenwith alternating azimuthal angle. Other parameters of legacy servopatterns, such as the servo pattern height and other geometricdimensions, as well as the number of servo stripes per burst, may bemodified as desired.

The HD pattern 404 may include periodic waveforms of various frequenciesalternately written in the length direction L along a longitudinal axisof the tape. The standard TBS pattern 402 may be used to provide initialidentification of the servo band (e.g., by providing a servo band ID);initial positioning of the head 406 on an appropriate servo location;acquisition of initial servo channel parameters, such as tape velocity,lateral head position, head-to-tape skew, LPOS, etc.; etc. Moreover, theHD pattern 404 may enable more accurate and more frequent estimates ofservo channel parameters, thereby achieving improved head positioning ata much wider range of tape velocities and support for larger bandwidthhead actuation. As such, track-density scaling may be enabled for verylarge cartridge capacities, as well as improved data rate scaling withhost computer requirements through the support of a wider velocityrange.

The detection of the periodic waveforms forming an HD pattern may beobtained by a detector that implements a complex algorithmic conversion,e.g., such as a Discrete Fourier Transform (DFT), a Fast FourierTransform (FFT), etc. However, this implementation complexity may reducethe flexibility in trade-offs between the rate of generation of servoreader lateral position estimates and the standard deviation of theestimation error. Accordingly, components (e.g., controllers) with highthroughput may desirably be used to process signals derived from an HDpattern in order to reduce the processing time thereof.

In one embodiment, a detector capable of reading a hybrid of TBS and HDpatterns may be implemented. The hybrid detector may be configured toobtain estimates of the energy of relevant spectral frequency componentsin a readback signal from the HD pattern, while also calculatingestimates of the lateral position of the head based on these energies,without applying a DFT or a FFT.

Samples provided at the input of the components performing the spectralestimation may be obtained at the proper sampling instants byinterpolating the sequence of readback HD servo signal samples from ananalog-to-digital (A/D) converter at a fixed clock frequency in oneembodiment, or at a variable clock frequency in another embodiment. Thetime base of the interpolator may be derived from the estimate of thetape velocity provided by the TBS channel operating in parallel with theHD detector, in some embodiments, as will be described in further detailbelow.

Various trade-offs between the rate of generation of spectral estimates,from which servo reader lateral position estimates are obtained, and thestandard deviation of the estimation error are possible. However, asuitable and preferred implementation may be achieved with asignificantly reduced complexity compared to DFT-based or FFT-basedimplementations. Specifically, in one embodiment, only a small set ofspectral estimates are computed, compared to the fixed set ofequally-spaced spectral components computed by a DFT or FFT.

Even when the HD servo pattern uses a large number of tone frequencies,the maximum number of spectral estimates that are computed by theproposed detector may correspond to the maximum number of tracks that anHD servo reader reads simultaneously at any time. Also, the proposeddetector may be reconfigured to provide spectral estimates correspondingto the tracks currently being read based on the coarse positioninginformation from the TBS channel.

The tape layout 400 of FIG. 4A includes a hybrid servo pattern 410according to one embodiment, in the hybrid servo pattern 410, an HDpattern 404 is written in a space adjacent to a standard TBS pattern402. Three servo readers Servo Reader are assigned to each hybrid servopattern 410 (e.g., servo band). According to the present embodiment,quadrature sequences are not included due to the use of the TBS pattern402, which is converse to products implementing servo functionality inhard-disk drives.

Looking momentarily to FIG. 4B, a partial detailed view of a TBS pattern402 (e.g., a TBS track) is illustrated according to an exemplaryembodiment. As shown, a plurality of servo stripes 412 together form aservo burst 414, while corresponding pairs of servo bursts 414 formservo sub-frames. In the present embodiment, the servo bursts 414included in the left servo sub-frame each have five servo stripes 412,while the servo bursts 414 included in the right servo sub-frame eachhave four servo stripes 412. The servo stripes 412 included in a givenservo burst 414 are oriented such that they have a same azimuthal sloperepresented by angle α. Moreover, corresponding pairs of servo bursts414 have opposing azimuthal slopes, thereby forming a chevron-typepattern. The height H and thickness t of the servo stripes 412 may varydepending on the servo writer used to write the TBS pattern 402.According to an exemplary approach, which is in no way intended to limitthe invention, the height H may be about 186 μm, and the angle α may beabout 6°, while the thickness t is about 2.1 μm. Moreover, the spacing Sbetween each of the servo stripes 412 and/or the sub-frame length SFLbetween servo bursts 414 having the same azimuthal slope may varydepending on the desired embodiment. According to an exemplary approach,which is in no way intended to limit the invention, the spacing S may beabout 5 μm, while the sub-frame length SFL is about 100 μm. As describedabove, patterned transitions such as that shown in FIG. 4B allow for anestimate of the head lateral position to be determined by evaluating therelative timing of pulses generated by a servo reader reading the servostripes 412 of the servo burst 414 as they are passed over the servoreader.

Referring again to FIG. 4A, the HD pattern 404 of FIG. 4A may includeperiodic waveforms written on adjacent tracks along the length L of thetape. For example, the adjacent tracks may each have one of two periodicwaveforms, characterized by two different spatial frequencies:low-frequency f₁ and high-frequency f₂, where f₂>f₁. However, a widerrange of lateral head displacement is desired. Accordingly, a differentconfiguration of the HD patterns may be used to avoid ambiguity indetermining the lateral displacement.

An HD servo pattern in some approaches may be written in adjacenttracks, where the periodic waveform in each track has a differentfrequency than the adjacent track. In general, HD patterns may beinterpreted as including periodic waveforms at “N” different frequenciesf₁, f₂, . . . , f_(N). Accordingly, HD servo patterns may be able todesirably provide more accurate and/or more frequent estimates of servochannel parameters according to various embodiments described herein.

Looking to FIGS. 5A-5D, an HD pattern 500 is shown that overcomes thelimited range of lateral head displacement associated with an HD patternhaving only two periodic waveforms, characterized by two differentspatial frequencies. As shown in FIGS. 5A and 5C, at least threefrequencies are used for the HD pattern 500 in adjacent tracks, whichrepeat periodically along the band where the HD pattern is written. Inthe embodiment of FIGS. 5A and 5C, the servo reader (denoted by theblock labelled ‘R’) spans wider in the cross-track direction 502 than asingle track, such that at least two tones are detected under anyreading conditions at a given time when the servo reader R is positionedover the HD pattern 500. Looking specifically to FIG. 5A, the reader Rspans across both the bottom portion 508 and middle portion 506 of theHD pattern 500. FIG. 5C illustrates an alternative position for theservo reader R, where the reader R spans across the upper portion 504and middle portion 506 of the HD pattern 500.

The three portions 508, 506, 504 of the periodic waveforms arecharacterized by three different frequencies f₁, f₂, and f₃,respectively, where, for example, f₃>f₂>f₁. According to variousapproaches, each waveform may be characterized as having a number ofperiods in a range from about 25 to about 200, such as 30 periods, 50periods, 75 periods, 100 periods, etc., within a predetermined spacing.More preferably, the predetermined spacing may be in a range from about50 μm to about 150 μm, such as about 60 μm, about 75 μm, about 100 μm,etc., depending on the approach. Moreover, the symbol length may be in arange from about 0.5 μm to about 3.0 μm, e.g., such as about 1.0 μm,about 1.5 μm, about 2.0 μm, etc.

Hence, with continued reference to FIGS. 5A-5D, an edge of one of theportions of the HD pattern 500 may be distinguished from the edge ofanother of the portions by evaluating the signals read by the servoreader R. Looking specifically to FIG. 5A, an edge of the middle portion506 may be distinguished from an edge of the bottom portion 508 byevaluating the signals read by the servo reader R. The graph 510 in FIG.5B identifies the various frequencies in the readback signal from servoreader R and the energy level corresponding to each of the respectivefrequencies. Energy values may be determined in some approaches byintegrating over a given amount of time (or distance along the tape). Asshown in graph 510, in addition to the middle frequency f₂, the bottomfrequency f₁ is present in the readback signal of the servo reader R andmay thereby be detected by a spectral analysis. According to someapproaches, spectral analysis may be performed by an HD detector.Furthermore, the energy values of the spectral components f₁ and f₂represent the relation of the servo reader R overlapping the middle andbottom portions 506, 508. Given that the energy value of the spectralcomponent of frequency f₁ is smaller than the energy value of thespectral component of the second frequency f₂, it follows that the servoreader R is overlapped with the middle portion 506 more than it isoverlapped with the bottom portion 508. Moreover, a comparison of thecorresponding energies may be used to determine a fine position of theservo reader R with respect to a magnetic tape.

Similarly, the graph 520 in FIG. 5D identifies the frequencies in thereadback signal from servo reader R positioned as shown in FIG. 5C, aswell as the energy level corresponding to each of the respectivefrequencies. As shown, frequencies f₂, and f₃ are present in thereadback signal of the servo reader R, and may be detected by a spectralanalysis. Again, the energies of the spectral components for frequenciesf₂, and f₃ represent that the servo reader R is positioned above theupper and middle portions 504, 506. Given that the energy of thespectral component of frequency f₃ is smaller than the energy of thespectral component of frequency f₂, it follows that the servo reader Ris overlapped with the middle portion 506 more than it is overlappedwith the upper portion 504. Moreover, the comparison of thecorresponding energy values may be used to determine a fine position ofthe servo reader R with respect to a magnetic tape.

The energies of the spectral components for frequencies in an HD servopattern may further be used to determine gain parameters which may beused to improve detector characteristics, as will be described infurther detail below.

Note that the waveform periods of the three frequencies may be integermultiples of a period T, for example T=241.3 nm, which corresponds tothe highest spatial frequency, which is proportional to 1/T, whenspectral estimation by a DFT/FFT-based detector with a minimum number ofspectral bins for given integration interval is adopted.

FIG. 6 shows a block diagram of a DFT/FFT-based detector 600 configuredfor the computation of the PES from an HD servo pattern comprisingperiodic waveforms. The servo signal from the servo reader 602 isinterpolated using a servo signal interpolator 604 with the timinginformation from a synchronous TBS servo channel 606. The interpolatedsignal samples are then processed by either a DFT-based or a FFT-based(DFT/FFT-based) detector 608 that estimates the signal energy values atfrequencies f₁ and f₂. The DFT/FFT-based detector 608 outputs are inputto a PES computation unit 610, which determines a PES estimate by takingthe difference of the signal energy values.

Ideally, the two periodic waveforms, whose energies are estimated by theDFT/FFT-based detector 608, are sinusoidal waveforms at frequencies f₁and f₂. However, a DFT/FFT-based detector 608 when used for HD patternshas an inherent drawback, as the number of spectral components, forwhich an estimate of the energy is provided, depends on the integrationinterval for the DFT (or FFT) computation, and may be very large whenthe integration interval extends over several periods of the fundamentalfrequency, as is typically the case when a low-noise estimation processis used.

Referring momentarily to FIG. 7, a servo channel 606 to extract servoinformation from TBS signals is illustrated according to an exemplaryembodiment which is in no way intended to limit the invention. As shown,a servo signal is input to an analog-to-digital converter (ADC) 702 ofthe TBS servo channel 606, which may in turn be provided to aninterpolation/correlation module 704 and/or an acquisition, monitoringand control module 706. Moreover, an output from the timing-basereference 708 is also provided to the interpolation/correlation module704. Acquisition, monitoring and control module 706 may output a lateralposition estimate and/or a tape velocity estimate which may be furtherused, e.g., according to any of the approaches described herein.Furthermore, Optimum signal detection module 710 may output LPOS symbolsand/or a reliability estimate as shown.

Servo channel 606 may operate at a specific clock rate at which itsamples the readback signal of a corresponding tape head. However, aprocessor which implements a controller capable of performing any one ormore of the operations described below (e.g., with respect to methods900, 1200, 1300), may operate at a different clock rate.

As the number of periodic waveform components forming the readbacksignal of an HD pattern is usually limited to two or three for a givenlateral position, it is advantageous to resort to a low-complexityimplementation of the detector, whereby only estimates of the energy ofthe relevant spectral components at two or three frequencies in thereadback signal of an HD pattern are efficiently computed.

Now looking to FIG. 8, a detector 800 for HD patterns is shown accordingto one embodiment. The detector 800 is configured to operate withperiodic waveforms, which correspond to the components of the readbacksignal of an HD pattern, that are characterized by three frequencies atany time, as illustrated for example in FIGS. 5A-5D according to oneembodiment. With continued reference to FIG. 8, the detector 800includes three digital filters 802, 804, 806 with low implementationcomplexity, each digital filter comprising a second-order infiniteimpulse response (IIR) stage followed by a two-tap finite impulseresponse (FIR) stage, for the estimation of the energy of the readbackHD servo signal at a specific frequency according to the Goertzelalgorithm. Other arrangements and components may be used for the threedigital filters 802, 804, 806 as would be understood by one of skill inthe art upon reading the present descriptions. The waveform periods (innm) corresponding to the three frequencies may be assumed to be integermultiples of a fundamental period, T.

For an accurate estimation of the energies of the three periodicwaveform components in a finite integration interval, the frequencies ofthe periodic waveform components preferably match the characteristicfrequencies of the three digital filters 802, 804, 806, denoted byω₀/2π, ω₁/2π, and ω₂/2π, respectively. When a match is not possible, itis preferred that the frequencies are within about 0.001% to 1.0% of thefrequencies set for the three digital filters 802, 804, 806, and morepreferably a difference of less than about 0.1%. This may be achieved byresampling the output sequence of the ADC 808 at appropriate timeinstants, which may be provided by an interpolator 810, with a time baseobtained from the tape velocity and a given interpolation distanceΔx_(HD), as shown in FIG. 8. The frequency fs of the clock 818, is usedas an input to the ADC 808, the counter 820, and the digital circuitryof the detector 800. Moreover, the frequency fs of the clock 818 may beeither a fixed frequency or a variable frequency.

In one embodiment, the interpolator 810 may be a cubic Lagrangeinterpolator to achieve smaller signal distortion than a linearinterpolator. Of course, any suitable interpolator may be used, as wouldbe understood by one of skill in the art. The output signal samples ofthe interpolator 810 are obtained that correspond with HD servo signalsamples taken at points on the tape that are separated by a stepinterpolation distance equal to Δx_(HD), independently of the tapevelocity. Δx_(HD) is preferably selected such that the conditionT/Δx_(HD)=K is satisfied, where K is a positive integer number. The timebase for the generation of the interpolator output samples may beprovided by an interpolation time computation unit 812, which yields thesequence of time instants {t_(n)}, at which the resampling of the ADCoutput sequence takes place. Time instants {t_(n)} may furthermore beprovided to circular buffer 822.

The detector 800 illustrated in FIG. 8 may be configured such that agiven number of samples is computed by the interpolator 810 within aclock interval T_(s)=1/f_(s). However, doing so may set a limit on themaximum tape velocity at which the detector 800 may operate, the maximumtape velocity represented by 2Δx_(HD)/T_(s). The maximum tape velocitysupported by the detector 800 may be increased by allowing a largernumber of samples to be computed by the interpolator 810 within a singleclock interval, but doing so also increases computational complexity.

For a fixed tape velocity, the time instants {t_(n)} may be uniformlyspaced by T₁ seconds, where T₁ denotes the time interval that it takesfor the tape to travel over a distance equal to the step interpolationdistance Δx_(HD). The estimation of the time interval T₁ is performed bya step interpolation time computation unit 814, which computesT₁=Δx_(HD)/ν_(est), i.e., the ratio between Δx_(HD) and the estimate ofthe instantaneous tape velocity ν_(est), which may be obtained from theTBS channel in one approach. The TBS channel may operate as asynchronous TBS channel according to one embodiment. The average numberof interpolated signal samples generated per ADC clock interval is givenby the ratio T_(s)/T₁, where T_(s)=1/f_(s) denotes the clock interval.The ADC clock frequency, f_(s), may be a fixed frequency in oneapproach, or a variable frequency in another approach.

In one embodiment, the HD detector 800 may be configured to estimate thetape velocity to determine time instants at which to obtain interpolatedsignal samples to input to the Goertzel algorithm as filtering elementsbased on an output of a TBS channel of the tape drive configured toprocess a TBS pattern written on the servo band of the magnetic tapemedium.

Referring still to FIG. 8, in another embodiment, the HD detector 800may be configured to compute a head lateral position estimate for coarsepositioning of the servo reader based on an output of a TBS channel ofthe tape drive. Also, the HD detector 800 may be configured to adjustsettings for at least one digital filter according to waveform frequencycomponents of the HD servo signal estimated based on the head lateralposition estimate. For example, the setting ω_(i) of the i-th digitalfilter may be adjusted based on the coarse position estimate and theknown frequency ω_(i)=2πf_(i) of the HD patterns located at thatestimated (coarse) lateral position. In another example, the settings ofthe i-th digital filter may be adjusted based on the coarse positionestimate and the combination of symbol length, integration interval,etc., of the HD patterns located at that estimated (coarse) lateralposition.

The HD detector 800 receives, as inputs, values of the threecharacteristic frequencies {ω₀, ω₁, ω₂}, with ω_(i)=2πf_(i) from whichthe coefficients of the digital filters 802, 804, 806 are obtained.These frequencies may be obtained from the knowledge of the servo readerlateral position provided by the TBS channel in one embodiment, asdescribed above. Assuming the number “Q” represents the number ofsamples over which the estimates of the energies of the periodicwaveforms are computed, Q may determine the length of the integrationinterval, and therefore may also determine the spatial frequencyresolution. Assuming the value of Q is even, Q/2 represents the numberof frequencies for which energy estimates would be provided by aDFT/FFT-based HD detector that operates over Q samples. Q may beobtained from the tape drive memory in one embodiment. Moreover, Q istypically about 100 or larger.

In another embodiment, the HD detector 800 may be implemented without aninterpolator 810, but with digital filters configurable to adjust theirsettings according to the waveform spatial frequency components of theHD servo signal read from the magnetic tape medium and the tapevelocity. Adjustment of the digital filters settings may be based on acoarse head lateral position estimate and/or a tape velocity estimatecomputed based on an output of a TBS channel of the tape drive.

In an alternate embodiment, an HD detector may implement additionaldigital filters, in excess to the digital filters used to estimate theenergies at the frequencies corresponding to the patterns written on thetracks being read simultaneously by the HD servo reader 816. The one ormore excess digital filters may be used to simplify reconfiguration ofthe detector when the target lateral position changes and, therefore,the input values of frequencies {ω_(x)} vary dynamically.

In a further embodiment, the one or more excess digital filters may beused to distinguish HD patterns characterized by a small number ofspectral components/lines from broadband noise and/or data signals. Thismay be achieved by choosing the characteristic frequency ω_(i) of theexcess digital filter such that it measures a spectral component at afrequency that is not used by the HD patterns.

A lateral position estimate of the HD servo reader 816, and hence aposition error signal from the knowledge of the target head position,may be obtained by a linear combination of the three energy estimates.Note that the maximum number of spectral estimates that are computed atany time is determined by the maximum number of tracks that may be readby the HD servo reader 816, which may equal three in some approaches,and not by the overall number of tones in the HD servo pattern, whichmay be larger than three. In a case where the number of tones is largerthan three, the values of the three characteristic frequencies {ω₀, ω₁,ω₂} that are provided to the HD detector 800 may be derived fromknowledge of the lateral position estimate obtained from the TBSchannel. Other components of the HD detector 800 may operate as would beknown to one of skill in the art, and are omitted here for the sake ofclarity of the described embodiments.

Although an HD servo detector may derive a lateral position of the headby comparing the energies from the different frequencies in the readbacksignal from the HD servo pattern, when an HD servo pattern is recordedwith tracks having different frequencies, if the tracks also have thesame width, the total energy measured from the readback signal will bedifferent. This is because the magnetic recording channel produces ahigher readback signal energy from tracks written at lower frequenciesand a smaller energy from tracks written at higher frequencies, for theparameters that are typically used for writing HD patterns. To accountfor this difference in readback energy values, the energy estimates maybe further multiplied by gain factors to compensate for the differentattenuations that the readback HD servo signal may experience atdifferent frequencies. As shown, the outputs |X_(i,t)|² from the threedigital filters 802, 804, 806 are multiplied by gain factors g_(i), fori=0, 1, 2 before being provided to a PES computation unit 824, whichprovides a position error estimate (ε_(t)) at given time t. The PEScomputation unit 824 determines a PES estimate by taking the differenceof the signal energy values. Thus, if the estimates of the waveformenergies are not normalized, the different characteristics of theperiodic waveforms at different frequencies may lead to undesirabledetector characteristics. In sharp contrast, by determining and applyingaccurate gain parameters, some of the embodiments described herein areable to significantly improve detector characteristics.

As previously mentioned, the energies of the spectral components forfrequencies in an HD servo pattern may be used to determine the gainparameters applied in a given situation. An HD servo pattern preferablyincludes longitudinally written tracks each having a periodic waveformof a particular frequency, where the frequencies differ from track totrack. In general, HD patterns may be interpreted as including periodicwaveforms at “N” different frequencies f₁, f₂, . . . , f_(N). Moreover,according to an illustrative approach, the “N” different frequencies maybe characterized by magnetic imprints of width 2*trD_(n) on alternatingcurrent (AC)-erased perpendicular media with symbol length L_(n).Accordingly, HD servo patterns may be able to desirably provide moreaccurate and/or more frequent estimates of servo channel parameters, aswould be appreciated by one skilled in the art after reading the presentdescription.

The HD detector 800 may be used to estimate the energy of the periodicwaveforms at the different frequencies f₁, f₂, . . . , f_(N). Moreover,“W” periodic waveforms may be written for each frequency, for a total ofN×W written tracks in an HD pattern. Thus, proper choices of the gainparameters g_(i), i=1, . . . , N, are again desired in order tocompensate for different waveform characteristics and/or obtaindesirable detector characteristics.

Looking to FIG. 9A a flowchart of a method 900 for determining the gainparameters used for adjusting the estimated energy values of periodicwaveforms in an HD servo pattern is shown according to one embodiment.The method 900 may be performed in accordance with the present inventionin any of the environments depicted in FIGS. 1-8, among others, invarious embodiments. For example, in some approaches one or more of theoperations in method 900 may be performed (e.g., implemented) by a tapedrive, e.g., as seen in FIG. 2. Of course, more or less operations thanthose specifically described in FIG. 9A may be included in method 900,as would be understood by one of skill in the art upon reading thepresent descriptions.

Each of the steps of the method 900 may be performed by any suitablecomponent of the operating environment. For example, in variousembodiments, the method 900 may be partially or entirely performed by acontroller, a processor, etc., or some other device having one or moreprocessors therein. The processor, e.g., processing circuit(s), chip(s),and/or module(s) implemented in hardware and/or software, and preferablyhaving at least one hardware component may be utilized in any device toperform one or more steps of the method 900. Illustrative processorsinclude, but are not limited to, a central processing unit (CPU), anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA), etc., combinations thereof, or any other suitablecomputing device known in the art.

As shown in FIG. 9A, operation 902 of method 900 includes causing aservo reader to move laterally in a first direction over an HD servoband of a moving magnetic tape. According to the present description,the “first direction” is in the cross-track direction which isperpendicular to a longitudinal axis of the magnetic tape. Moreover,causing the servo reader to move laterally in the first direction mayinclude sending instructions to an actuator to cause the lateral motionof the servo reader.

According to an exemplary embodiment, which is in no way intended tolimit the invention, causing the servo reader to move laterally in thefirst direction, and/or a direction antiparallel thereto, may beperformed in a closed loop by applying a slowly varying referencewaveform to the track-following loop. Furthermore, a lateral positionestimate provided by a TBS servo channel may be used as feedbackinformation. Referring momentarily to FIG. 10, a block diagram 1000 oftrack-following and skew-compensation loops operating with servoinformation extracted from a TBS pattern is illustrated in accordancewith one embodiment. It follows that any one or more of the componentsincluded in block diagram 1000 may be used to cause the servo reader tomove laterally in a first direction (and/or a direction antiparallelthereto) over the HD servo band on the moving magnetic tape, e.g., aswould be appreciated by one skilled in the art after reading the presentdescription. Moreover, the system represented by block diagram 1000 mayimplement dual synchronous servo channels, according to some approaches.

Referring again to FIG. 9A, operation 904 of method 900 includesreceiving a readback signal from the servo reader as the servo readermoves laterally in the first direction. As described above (e.g., withreference to FIGS. 5A-5D), an HD servo pattern may include a pluralityof HD servo tracks. Moreover, each of the HD servo tracks may include atleast two patterns written at different frequencies to produce differentperiodic waveforms during readback. Thus, the readback signal receivedmay be processed to derive the different periodic waveforms includedtherein and the varying energy levels associated therewith. As a result,the difference in the energy levels of the different periodic waveformsmay be used to determine a respective gain parameter, as will soonbecome apparent.

Optional operation 906 of method 900 further includes causing the servoreader to move laterally in a second direction opposite (antiparallelto) the first direction over the HD servo pattern. Moreover, optionaloperation 908 includes receiving a second readback signal from the servoreader as the servo reader moves laterally in the second direction.Operations 906 and 908 are optional in the sense that a second readbacksignal may not be needed in order to perform the remaining operationsincluded in FIG. 9A. Rather, the readback signal received from a servoreader as it moves laterally across an HD servo pattern in one directionmay be sufficient. Moreover, optional operation 906 and/or optionaloperation 908 may be performed according to any of the approachesdescribed above with reference to operation 902 and 904 respectively.

Method 900 further includes using amplitudes of the second readbacksignal and/or the readback signal to determine a maximum energy value ofeach of the at least two periodic waveforms. See operation 910.According to some approaches which are in no way intended to limit theinvention, the maximum energy of each periodic waveform may bedetermined if two conditions have been met.

The first condition is that the width of the servo reader measured inthe cross-track direction is greater than a width of each of the HDservo tracks. Preferably, the width of the servo reader is greater than1.5 times the width of at least one of the HD servo tracks. In otherapproaches, the width of the servo reader is greater than 2 times thewidth of at least one of the HD servo tracks. Referring momentarily backto the embodiment of FIGS. 5A and 5C, the servo reader (denoted by theblock labelled ‘R’) spans wider in the cross-track direction 502 thanthe width of a single track, such that at least two tones are detectedunder any reading conditions at a given time when the servo reader R ispositioned over the HD pattern 500. Looking specifically to FIG. 5A, thereader R spans across both the bottom portion 508 and middle portion 506of the HD pattern 500. FIG. 5C illustrates an alternative position forthe servo reader R, where the reader R spans across the upper portion504 and middle portion 506 of the HD pattern 500.

Referring again to method 900 of FIG. 9A, the second condition is thatthe lateral motion of the servo reader is sufficiently slow to be ableto identify and measure the maximum energy level of each of the at leasttwo periodic waveforms. This condition may be met in existing tapedrives, even when the track-following servo control loop is inactive.When the track-following servo control loop is inactive, tape willtypically exhibit slow lateral tape motion (LTM) during tape transportoperations. The slow LTM may be exploited to estimate the energy levelsof the periodic waveforms. For embodiments implementing activetrack-following servo control, the LTM may be actively compensated for,and any type of additional slow lateral movement of the servo readerrelative to tape may be achieved with active control, as would beappreciated by one skilled in the art after reading the presentdescription.

Once equipped with the maximum energy value of each of the at least twoperiodic waveforms, method 900 further includes using the maximum energyvalues to set a gain parameter for each of the respective periodicwaveforms. See operation 912.

It should be noted that any one or more of the operations included inmethod 900 may be performed at a time when calibration of the gainparameters for a set of tape cartridges having the same HD servo patternis performed. The gain parameters may thereby be stored in (coded into)memory of each of the tape cartridges. However, any one or more of theoperations included in method 900 may additionally or alternatively beperformed each time a tape cartridge is loaded into a tape drive, duringdrive operation due to reader element wear, periodically after an amountof time, etc.

Looking now to FIG. 9B, exemplary sub-operations of using the maximumenergy values to set a gain parameter for each of the respectiveperiodic waveforms are illustrated in accordance with one embodiment,one or more of which may be used to perform operation 912 of FIG. 9A.However, it should be noted that the sub-operations of FIG. 9B areillustrated in accordance with one embodiment which is in no wayintended to limit the invention.

As shown, using the maximum energy values to set a gain parameter foreach of the respective periodic waveforms includes identifying thehighest maximum energy value of the respective periodic waveforms. Seesub-operation 922. Once the highest maximum energy value has beenidentified, the gain parameters may be normalized based on the highestmaximum energy value. To normalize the gain parameters, sub-operation924 first includes setting a gain parameter corresponding to theperiodic waveform with the highest maximum energy value equal to apredefined value (e.g., a value of 1). Moreover, the remaining gainparameters are normalized with respect to the highest maximum energyvalue using the predefined value. See sub-operation 926.

According to preferred approaches, the remaining gain parameters may beset such that the product of each gain parameter multiplied by acorresponding maximum energy value is normalized. According to anillustrative approach, which is in no way intended to limit theinvention, the gain parameter for the channel corresponding to theperiodic waveform with highest energy, Ê_(k), is set equal to 1, whilethe remaining gain parameters are set equal to Ê_(k)/Ê_(j), i=1, . . . ,N, i≠k. In other words, the gain parameters are preferably set such thatwhen multiplied with a corresponding energy value, the resulting productis a normalized value. As a result, preferred approaches included hereinare able to determine gain parameters used to adjust (prior to PEScomputation) the estimated energy values of periodic waveforms in an HDservo pattern.

Looking to FIGS. 11A-11D, one or more of the operations included inFIGS. 9A-9B are shown as being implemented on an HD servo pattern 1100in accordance with an exemplary embodiment, which is in no way intendedto limit the invention. The HD servo pattern 1100 in FIG. 11A includes aplurality of HD servo tracks 1101, 1103, 1105, where adjacent HD servotracks 1101, 1103, 1105 may each correspond to a different frequency asdenoted by the different arrow lengths included therein. However, thefrequency of some of the HD servo tracks 1101, 1103, 1105 may be aboutthe same. According to the present embodiment, HD servo track pair 1101has an about equal frequency, as do HD servo track pair 1103 and HDservo track pair 1105. Different HD servo tracks may have a differentenergy associated therewith than an immediately adjacent HD servo track.For example, HD servo track 1101 has a different energy associatedtherewith than an energy associated with HD servo track 1103 because thetwo HD servo tracks are written at different frequencies. However, HDservo tracks written at about the same frequency may have an energyassociated therewith that is about the same. For example, each of the HDservo tracks in pair 1105 may have a respective energy value associatedtherewith such that the energy values are about equal.

Referring still to FIG. 11A, the servo reader (denoted by “R”) is firstcaused to move in a first direction along the cross-track direction1102. The distance that the servo reader R is caused to move in thefirst direction may vary depending on the number of HD servo tracksand/or the number of signals having different frequencies includedtherein. Afterward, the servo reader R is caused to move in a seconddirection along the cross-track direction 1102, the second directionbeing opposite (antiparallel) the first direction. The distance that theservo reader R is caused to move in the second direction may be aboutequal to the distance the distance the servo reader R was caused to movein the first direction. By causing the servo reader R to move in thefirst and second directions while the tape on which the HD servo pattern1100 is positioned is traveling along the intended direction of tapetravel 1104, the path of motion of the servo reader R along the lengthof the HD servo pattern 1100 has a “V” shape (e.g., a triangulartrajectory) as represented by the dashed lines. Moreover, it should benoted that the width of the servo reader W_(R) is twice as wide as awidth W_(T) of one of the HD servo tracks.

Looking to graphs 1110, 1120, 1130 of FIGS. 11B-11D respectively, theplots included therein represent the waveforms which correspond to thethree energy estimates obtained at the output of an HD detector byapplying the triangular trajectory shown in FIG. 11A. As mentionedabove, the lateral motion of the servo reader R is preferablysufficiently slow such that the maximum energy level of each of the atleast two periodic waveforms may be identified and measured. By movingan HD servo reader laterally up and down across the HD servo pattern byan amount that spans the HD pattern width, the amplitude of the readbacksignal may be used to derive an estimate of the maximum value of theenergy of each of the NW periodic waveforms written at the N differentfrequencies, E_(i), i=1, . . . , NW. The energy values Ê_(j), j=1, . . ., N, used to set the gain parameter for the periodic waveforms at the Nfrequencies may then be obtained by averaging the maximum energy valuesthat have been estimated for the waveforms at frequency f_(j), j=1, . .. , N.

As mentioned above, according to some approaches the patterns written inmore than one HD servo track may have a same frequency. Referringmomentarily to FIG. 11A, “duplicate” HD servo tracks written at a samefrequency are labeled in pairs 1101, 1103, 1105 and shown as havingarrows of about the same length. Thus, according to an example, a HDservo pattern may include a first HD servo track having a patternwritten at a same frequency as the frequency of a pattern included in asecond HD servo track. As a result, the same frequency associated withthe first and second HD servo tracks may also produce a same periodicwaveform during readback of each of the first and second HD servotracks. In such approaches, it is preferred that using the maximumenergy values to set a gain parameter for the first and second HD servotracks (e.g., see operation 910 above) includes averaging the maximumenergy value corresponding to the first HD servo track with the maximumenergy value corresponding to the second HD servo track. Furthermore,the average maximum energy value may then be used to set the gainparameter for the periodic waveform of the first and second HD servotracks, e.g., according to any of the approaches described herein.

Looking again to graphs 1110, 1120, 1130 of FIGS. 11B-11D respectively,energy estimates as a function of time during calibration of gainparameters with a respect to three different frequencies from thereadback signal of an HD pattern are shown. The energy estimates assumevalues close to the maximum over an extended time interval, whichenables a reliable estimation of the maximum energy values for each ofthe periodic waveforms. Accordingly, the maximum energy value for eachof the periodic waveforms at the given frequency corresponds to when theservo reader R fully overlaps a respective one of the HD servo tracks.Each of these instances is represented by the “plateaus” (maximum value)in each of the plots of graphs 1110, 1120, 1130. Moreover, implementingproper gain parameters may cause the energy values at each of theplateaus for each of the plots to be equal, thereby desirablynormalizing the outputs.

In order to determine the proper gain parameters, the gain parameter forthe channel corresponding to the periodic waveform with highest energy,Ê_(k), may be set equal to 1, while the remaining gain parameters may beset equal to Ê_(k)/Ê_(j), i=1, . . . , N, i≠k. In some approaches, theenergy values for the periodic waveforms at a given frequency cannot beassumed equal, e.g., because of different HD servo track widths. In suchapproaches, the gain parameters may be set by using the individualestimates for each of the HD servo tracks, rather than using the averagevalues thereof.

According to another illustrative embodiment, which is in no wayintended to limit the invention, a system may be dynamicallyreconfigured such that only those spectral estimates that correspond tothe periodic waveforms currently being read, are computed. This type ofembodiment may desirably be implemented in situations for which thenumber of tone frequencies is greater than or equal to three, yet thewidth of the servo reader is such that it cannot read all the HD servotracks simultaneously. The estimates of the maximum energy values of theperiodic waveforms at the N different frequencies, Ê_(i), i=1, . . . ,N, may initially be obtained as described according to any of theapproaches described herein. However, the system may be dynamicallyreconfigured so that an HD detector (e.g., see 800 of FIG. 8) computesonly those spectral estimates that correspond to the periodic waveformscurrently being read, as the maximum number of gain parameters providedto an HD detector preferably corresponds to the maximum number of tracksthat an HD servo reader reads simultaneously at any given time. In thiscase, the gain parameters may also be dynamically reconfigured bysetting the gain parameter for the channel corresponding to the periodicwaveform with the highest energy being read (E′_(j)) equal to 1, andnormalizing the remaining gain parameters with respect to Ê′_(j).Furthermore, the path of the HD servo reader over an HD servo patternmay be different from a triangular shape as seen in FIG. 11A, andapproximate a sine-like wave plot in some approaches, or a pseudorandommanner in other approaches.

Depending on the approach, causing the servo reader to move laterallyalong the width of one or more HD servo tracks in the cross-trackdirection may incorporate a reference lateral position of the servoreader. Looking to FIG. 12, a flowchart of a method 1200 for causing theservo reader to move laterally the width of one or more HD servo tracksis illustrated in accordance with one embodiment. The method 1200 may beperformed in accordance with the present invention in any of theenvironments depicted in FIGS. 1-11D, among others, in variousembodiments. Of course, more or less operations than those specificallydescribed in FIG. 12 may be included in method 1200, as would beunderstood by one of skill in the art upon reading the presentdescriptions.

Each of the steps of the method 1200 may be performed by any suitablecomponent of the operating environment. For example, in variousembodiments, the method 1200 may be partially or entirely performed by acontroller, a processor, etc., or some other device having one or moreprocessors therein. The processor, e.g., processing circuit(s), chip(s),and/or module(s) implemented in hardware and/or software, and preferablyhaving at least one hardware component may be utilized in any device toperform one or more steps of the method 1200. Illustrative processorsinclude, but are not limited to, a central processing unit (CPU), anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA), etc., combinations thereof, or any other suitablecomputing device known in the art.

Operation 1202 of method 1200 includes determining a lateral positionestimate from a TBS pattern on the magnetic tape. As mentioned above, insome embodiments, the movement of the servo reader laterally correspondsto a reference lateral position of the servo reader with respect to theHD servo pattern. However, depending on the approach, the referencelateral position of the servo reader may vary, e.g., depending onwhether TBS information is available.

In some approaches, the reference lateral position may merely be arandomly selected lateral position in the HD servo pattern on themagnetic tape along the cross-track direction. A randomly selectedreference lateral position may be chosen in situations where TBSinformation is not available. In such instances, the lateral movement ofthe servo reader may be performed by first blindly detecting thepresence of the HD pattern in the readback servo signal. An estimationof the head lateral position may be made using the blind detection ofthe HD pattern. A feedforward control signal (e.g., a current) may thenbe applied to a head actuator to achieve the desired motion in the firstand/or second lateral (cross-track) directions irrespective of theactual position of the head relative to the tape, e.g., implemented asan open loop control system.

Alternatively, in some approaches involving an HD servo pattern forwhich TBS information is not available, the number of tone frequenciesis greater than or equal to three, and the width of the HD servo readergreater than the width of an HD servo track, a reliable estimation ofthe maximum energy values for each periodic waveform may be obtained byusing closed-loop track-following operations. The reference lateralposition may correspond to the servo reader being centered over one ofthe at least two periodic waveforms of the HD servo pattern along thecross-track direction (perpendicular to a longitudinal axis of the HDservo pattern). In such approaches, the reference lateral position maybe determined using plots of the energy values for each of the periodicwaveforms, e.g., as seen in FIGS. 11B-11D. Accordingly, the referencelateral position may be selected as the position of the servo readercorresponding to the center of a plateau in an energy vs. time plot ofthe readback signal. In other words, the reference lateral position maybe selected as the value that corresponds to the HD servo reader lateralposition, for which three or more frequencies are observed in the readback signal, and the detected energy values of the two waveforms thatare written adjacent to the centered waveform are equal. In still otherapproaches, the reference lateral position may correspond to the servoreader being centered over a transition between two of the periodicwaveforms of the HD servo pattern along the cross-track direction.

Furthermore, operation 1204 includes using the lateral position estimateas feedback information when causing the servo reader to move laterallyin the first direction. Thus, according to some specific embodiments,one or both of the operations included in method 1200 may be implementedas a part of performing operation 902 and/or operation 912 of FIG. 9Aabove.

Gain parameters may further be updated depending on changes to themaximum energy values of periodic waveforms as described above. Lookingnow to FIG. 13, a flowchart of a method 1300 for updating gainparameters is shown according to one embodiment. The method 1300 may beperformed in accordance with the present invention in any of theenvironments depicted in FIGS. 1-12, among others, in variousembodiments. Of course, more or less operations than those specificallydescribed in FIG. 13 may be included in method 1300, as would beunderstood by one of skill in the art upon reading the presentdescriptions.

Each of the steps of the method 1300 may be performed by any suitablecomponent of the operating environment. For example, in variousembodiments, the method 1300 may be partially or entirely performed by acontroller, a processor, etc., or some other device having one or moreprocessors therein. The processor, e.g., processing circuit(s), chip(s),and/or module(s) implemented in hardware and/or software, and preferablyhaving at least one hardware component may be utilized in any device toperform one or more steps of the method 1300. Illustrative processorsinclude, but are not limited to, a central processing unit (CPU), anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA), etc., combinations thereof, or any other suitablecomputing device known in the art.

As shown in FIG. 13, operation 1302 of method 1300 includes storing themaximum energy value of each of the periodic waveforms in memory, e.g.,such as a lookup table. As mentioned above, a high-density servo bandincludes a plurality of high-density servo tracks, the servo tracksincluding at least two patterns written at different frequencies whichproduce different periodic waveforms during readback. Thus, operation1302 may include storing at least two maximum energy values in memory,each of the at least two maximum energy values corresponding to arespective periodic waveform. It should be noted that it may bedesirable that the maximum energy value of each of the periodicwaveforms be estimated and stored in memory for embodiments where awidth of the servo reader is twice as wide as a width of an HD servotrack. Moreover, the maximum energy values may initially be estimated(e.g., calculated) according to any of the approaches described herein.

Method 1300 also includes monitoring current maximum energy values ofthe at least two periodic waveforms. See operation 1304. According tosome approaches, the monitoring may be performed during normaltrack-following operations, e.g., without causing the HD servo reader tomove laterally along the HD servo pattern as shown in FIG. 11A. However,it should be noted that monitoring may be performed without causing theHD servo reader to move laterally along the HD servo pattern when the HDservo reader is known to fully cover at least one of the HD servo tracksduring a track-following operation. In other words, when a width of theHD servo reader is at least as large as a width of an HD servo track.This is at least partly because during track-following operations, atany time there may exists at least one periodic waveform at a givenfrequency for which the measure of the corresponding energy valueprovided by the HD reader is at a maximum value if the HD servo readeris known to fully cover at least one of the HD servo tracks. Thus, overtime each of the HD servo tracks are likely to be read duringtrack-following operation, and as a result, the estimates of the maximumenergy value for all frequencies are likely to be monitored, therebyincreasing system robustness against slowly varying systemcharacteristics. Moreover, part of the process of monitoring the currentmaximum energy values may include comparing the current values withcorresponding maximum energy values stored in memory. Accordingly,changes to the maximum energy values may be more easily detected.

It follows that in general, monitoring may be performed duringtrack-following operations which correspond to reference lateralpositions such that a maximum of the energy value of a periodic waveformin the read back signal is observed with high probability, even in thepresence of track-following errors. In some approaches, the currentmaximum energy values may be monitored by repeatedly checking plots ofthe energy values stored in memory for each of the periodic waveforms,e.g., as seen in FIGS. 11B-11D. In other approaches, the current maximumenergy values may be monitored by repeatedly comparing them withcorresponding maximum energy values stored in memory.

Referring still to FIG. 13, decision 1306 includes determining whetherthe difference between each of the current maximum energy values and therespective maximum energy values stored in memory is in a predeterminedrange. The predetermined range may be set by a user, accessed from alookup table, depend on performance characteristics, etc. Depending onthe size of the predetermined range, some variation (e.g., negligiblevariation) between the current and stored maximum energy values may notbe actionable. Moreover, it should be noted that “in a predeterminedrange” is in no way intended to limit the invention. Rather thandetermining whether a value is in a predetermined range, equivalentdeterminations may be made, e.g., as to whether a value is above athreshold, whether a value is outside a predetermined range, whether anabsolute value is above a threshold, whether a value is below athreshold, etc., depending on the desired approach.

As shown, method 1300 returns to operation 1304 in response todetermining that the difference between each of the current maximumenergy values and the respective maximum energy values stored in memoryis in a predetermined range, whereby the current maximum energy valuesmay continue to be monitored. However, method 1300 may proceed tooperation 1308 or operation 1310 in response to determining that thedifference between any one or more of the current maximum energy valuesand the respective maximum energy values stored in memory is in apredetermined range. Which of operation 1308 and operation 1310 isactually performed may depend on user preference, how far outside thepredetermined range the difference is, system settings, etc.

Operation 1308 includes replacing a maximum energy value stored inmemory for one of the periodic waveforms with the respective currentmaximum energy value, while operation 1310 includes recalibrating atleast one of the gain parameters for the respective periodic waveforms.

As alluded to above, recalibration of one or more of the gain parametersmay be performed each time a tape cartridge is loaded into a tape drive,during drive operation due to reader element wear, periodically after anamount of time, etc. However, a replacement of a maximum energy valuestored in memory may be performed when a sufficient difference betweenthe value stored in memory and the current maximum energy value isdetected during normal operation. It should be noted that althoughoperations 1308 and 1310 are shown in the present embodiment as beingalternative choices (only one of them is performed), in otherembodiments, both of operations 1308 and 1310 may be performed. Thus, amaximum energy value stored in memory for one of the periodic waveformsmay be replaced with the respective current maximum energy value inaddition to recalibrating at least one of the gain parameters for therespective periodic waveforms in response to determining that thedifference between any one or more of the current maximum energy valuesand the respective maximum energy values stored in memory is in apredetermined range.

It follows that various embodiments described herein include an improvedprocess of determining the gain parameters that are used for adjusting(e.g., prior to PES computation) the estimated energy values of periodicwaveforms in an HD servo pattern. As a result, the achievable accuracyof detector characteristics may be significantly improved. As describedherein, this improvement may be achieved for HD servo systems by movingan HD servo reader laterally across an HD servo pattern, preferably byan amount that spans the HD pattern width, and using the amplitude ofthe readback signal to derive an estimate of the maximum value of theenergy of each of the periodic waveforms in the HD servo pattern writtenat different frequencies. The energy values may then be used to set thegain parameters for each of the periodic waveforms by averaging themaximum energy values. The gain parameter for the channel correspondingto the periodic waveform with the highest energy may be set equal to apredetermined value (e.g., a value of 1), while the remaining gainparameters may be normalized as described in any of the approachesincluded and/or suggested herein.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portableCD-ROM, a DVD, a memory stick, a floppy disk, a mechanically encodeddevice such as punch-cards or raised structures in a groove havinginstructions recorded thereon, and any suitable combination of theforegoing. A computer readable storage medium, as used herein, is not tobe construed as being transitory signals per se, such as radio waves orother freely propagating electromagnetic waves, electromagnetic wavespropagating through a waveguide or other transmission media (e.g., lightpulses passing through a fiber-optic cable), or electrical signalstransmitted through a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

Moreover, a system according to various embodiments may include aprocessor and logic integrated with and/or executable by the processor,the logic being configured to perform one or more of the process stepsrecited herein. By integrated with, what is meant is that the processorhas logic embedded therewith as hardware logic, such as an applicationspecific integrated circuit (ASIC), a field programmable gate array(FPGA), etc. By executable by the processor, what is meant is that thelogic is hardware logic; software logic such as firmware, part of anoperating system, part of an application program; etc., or somecombination of hardware and software logic that is accessible by theprocessor and configured to cause the processor to perform somefunctionality upon execution by the processor. Software logic may bestored on local and/or remote memory of any memory type, as known in theart. Any processor known in the art may be used, such as a softwareprocessor module and/or a hardware processor such as an ASIC, a FPGA, acentral processing unit (CPU), an integrated circuit (IC), etc.

It will be clear that the various features of the foregoing systemsand/or methodologies may be combined in any way, creating a plurality ofcombinations from the descriptions presented above.

It will be further appreciated that embodiments of the present inventionmay be provided in the form of a service deployed on behalf of acustomer.

The inventive concepts disclosed herein have been presented by way ofexample to illustrate the myriad features thereof in a plurality ofillustrative scenarios, embodiments, and/or implementations. It shouldbe appreciated that the concepts generally disclosed are to beconsidered as modular, and may be implemented in any combination,permutation, or synthesis thereof. In addition, any modification,alteration, or equivalent of the presently disclosed features,functions, and concepts that would be appreciated by a person havingordinary skill in the art upon reading the instant descriptions shouldalso be considered within the scope of this disclosure.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. Thus, the breadth and scope of an embodiment of the presentinvention should not be limited by any of the above-described exemplaryembodiments, but should be defined only in accordance with the followingclaims and their equivalents.

What is claimed is:
 1. A tape drive-implemented method, comprising:causing a servo reader to move in a first direction over a high-densityservo pattern which includes a plurality of high-density servo tracks,wherein each of the servo tracks includes at least two patterns writtenat different frequencies to produce different periodic waveforms duringreadback; receiving a readback signal from the servo reader as the servoreader moves in the first direction; and using the readback signal toset a gain parameter for each of the respective periodic waveforms. 2.The tape drive-implemented method as presented in claim 1, comprising:causing the servo reader to move in a second direction opposite thefirst direction over the high-density servo pattern; receiving a secondreadback signal from the servo reader as the servo reader moves in thesecond direction; and using amplitudes of the readback signal and thesecond readback signal to determine a maximum energy value of each ofthe at least two periodic waveforms, wherein using the readback signalto set the gain parameter for each of the respective periodic waveformsincludes using the maximum energy values.
 3. The tape drive-implementedmethod as presented in claim 2, wherein using the maximum energy valuesto set a gain parameter for each of the respective periodic waveformsincludes identifying the highest maximum energy value and normalizingthe gain parameters based on the highest maximum energy value.
 4. Thetape drive-implemented method as presented in claim 3, wherein using themaximum energy values to set a gain parameter for each of the respectiveperiodic waveforms includes: setting a gain parameter corresponding tothe periodic waveform with the highest maximum energy value equal to apredefined value; and normalizing the remaining gain parameters withrespect to the highest maximum energy value using the predefined value.5. The tape drive-implemented method as presented in claim 2,comprising: storing the maximum energy values of the at least twoperiodic waveforms in memory; monitoring current maximum energy valuesof the at least two periodic waveforms; determining whether a differencebetween each of the current maximum energy values and the respectivemaximum energy values stored in memory is in a predetermined range; andrecalibrating at least one of the gain parameters for the respectiveperiodic waveforms in response to determining that the differencebetween at least one of the current maximum energy values and therespective stored maximum energy value for the one of the periodicwaveforms is not in the predetermined range.
 6. A computer programproduct comprising a computer readable storage medium having programinstructions embodied therewith, wherein the computer readable storagemedium is not a transitory signal per se, the program instructionsexecutable by a processor to cause the processor to: cause, by theprocessor, a servo reader to move in a first direction over ahigh-density servo pattern which includes a plurality of high-densityservo tracks, wherein each of the servo tracks includes at least twopatterns written at different frequencies to produce different periodicwaveforms during readback; receive, by the processor, a readback signalfrom the servo reader as the servo reader moves in the first direction;and use, by the processor, the readback signal to set a gain parameterfor each of the respective periodic waveforms.
 7. The computer programproduct as presented in claim 6, the program instructions executable bythe processor to cause the processor to: cause, by the processor, theservo reader to move in a second direction opposite the first directionover the high-density servo pattern; receive, by the processor, a secondreadback signal from the servo reader as the servo reader moves in thesecond direction; and use, by the processor, amplitudes of the readbacksignal and the second readback signal to determine a maximum energyvalue of each of the at least two periodic waveforms wherein using thereadback signal to set the gain parameter for each of the respectiveperiodic waveforms includes using the maximum energy values.
 8. Thecomputer program product as presented in claim 7, wherein using themaximum energy values to set a gain parameter for each of the respectiveperiodic waveforms includes: identifying the highest maximum energyvalue; normalizing the gain parameters based on the highest maximumenergy value; setting a gain parameter corresponding to the periodicwaveform with the highest maximum energy value equal to a predefinedvalue; and normalizing the remaining gain parameters with respect to thehighest maximum energy value using the predefined value.
 9. The computerprogram product as presented in claim 7, the program instructionsexecutable by the processor to cause the processor to: store, by theprocessor, the maximum energy values of the at least two periodicwaveforms in memory; monitor, by the processor, current maximum energyvalues of the at least two periodic waveforms; determine, by theprocessor whether a difference between each of the current maximumenergy values and the respective maximum energy values stored in memoryis in a predetermined range; and replace, by the processor, a maximumenergy value stored in memory for one of the periodic waveforms with therespective current maximum energy value in response to determining thatthe difference between the current maximum energy value and therespective stored maximum energy value for the one of the periodicwaveforms is not in the predetermined range.
 10. A tape drive,comprising: a controller comprising logic integrated with and/orexecutable by the controller to cause the controller to: cause a servoreader to move in a first direction over a high-density servo patternwhich includes a plurality of high-density servo tracks, wherein each ofthe servo tracks includes at least two patterns written at differentfrequencies to produce different periodic waveforms during readback;receive a readback signal from the servo reader as the servo readermoves in the first direction; and use the readback signal to set a gainparameter for each of the respective periodic waveforms.
 11. The tapedrive as presented in claim 10, comprising: causing the servo reader tomove in a second direction opposite the first direction over thehigh-density servo pattern; receiving a second readback signal from theservo reader as the servo reader moves in the second direction; andusing amplitudes of the readback signal and the second readback signalto determine a maximum energy value of each of the at least two periodicwaveforms, wherein using the readback signal to set the gain parameterfor each of the respective periodic waveforms includes using the maximumenergy values.
 12. The tape drive as presented in claim 11, whereinusing the maximum energy values to set a gain parameter for each of therespective periodic waveforms includes identifying the highest maximumenergy value and normalizing the gain parameters based on the highestmaximum energy value.
 13. The tape drive as presented in claim 12,wherein using the maximum energy values to set a gain parameter for eachof the respective periodic waveforms includes: setting a gain parametercorresponding to the periodic waveform with the highest maximum energyvalue equal to a predefined value; and normalizing the remaining gainparameters with respect to the highest maximum energy value using thepredefined value.
 14. The tape drive as presented in claim 11,comprising: storing the maximum energy values of the at least twoperiodic waveforms in memory; monitoring current maximum energy valuesof the at least two periodic waveforms; determining whether a differencebetween each of the current maximum energy values and the respectivemaximum energy values stored in memory is in a predetermined range; andreplacing a maximum energy value stored in memory for one of theperiodic waveforms with the respective current maximum energy value inresponse to determining that the difference between the current maximumenergy value and the respective stored maximum energy value for the oneof the periodic waveforms is not in the predetermined range.
 15. Thetape drive as presented in claim 14, wherein the monitoring is performedduring normal track-following operations.
 16. The tape drive aspresented in claim 11, comprising: storing the maximum energy values ofthe at least two periodic waveforms in memory; monitoring currentmaximum energy values of the at least two periodic waveforms;determining whether a difference between each of the current maximumenergy values and the respective maximum energy values stored in memoryis in a predetermined range; and recalibrating at least one of the gainparameters for the respective periodic waveforms in response todetermining that the difference between at least one of the currentmaximum energy values and the respective stored maximum energy value forthe one of the periodic waveforms is not in the predetermined range. 17.The tape drive as presented in claim 10, wherein causing the servoreader to move in the first direction corresponds to a referenceposition of the servo reader with respect to the high-density servopattern.
 18. The tape drive as presented in claim 17, wherein thereference position either corresponds to the servo reader being centeredover one of the at least two periodic waveforms of the high-densityservo pattern, or is a randomly selected position in the high-densityservo pattern on a magnetic tape.
 19. The tape drive as presented inclaim 10, wherein the high-density servo pattern includes a duplicatehigh-density servo track having a pattern written at a same frequency asthe frequency of a pattern included in one of the plurality ofhigh-density servo tracks, wherein the same frequency produces a sameperiodic waveform during readback, wherein using the maximum energyvalues to set a gain parameter for the same periodic waveform includes:averaging the maximum energy value corresponding to the duplicatehigh-density servo track with the maximum energy value corresponding tothe one of the plurality of high-density servo tracks; and using theaverage maximum energy value to set the gain parameter for the sameperiodic waveform.
 20. The tape drive as presented in claim 10,comprising: determining a lateral position estimate from a timing-basedservo pattern; and using the lateral position estimate as feedbackinformation when causing the servo reader to move in the firstdirection.